home *** CD-ROM | disk | FTP | other *** search
/ Cre@te Online 2000 December / Cre@teOnline CD05.iso / MacSoft / XML ConsoleMax.sea / XML ConsoleMax / Required / esc.jar / com / extensibility / app / BaseEdit.class (.txt) < prev    next >
Encoding:
Java Class File  |  2000-06-30  |  1.4 KB  |  60 lines

  1. package com.extensibility.app;
  2.  
  3. import com.extensibility.util.Debug;
  4. import javax.swing.undo.AbstractUndoableEdit;
  5.  
  6. public abstract class BaseEdit extends AbstractUndoableEdit {
  7.    protected BaseDocument document;
  8.    protected String name;
  9.    protected boolean wasTouched;
  10.  
  11.    public BaseEdit(String var1) {
  12.       this.name = var1;
  13.       this.document = null;
  14.    }
  15.  
  16.    public BaseEdit(BaseDocument var1, String var2) {
  17.       this.name = var2;
  18.       this.document = var1;
  19.       this.wasTouched = this.document.isTouched();
  20.    }
  21.  
  22.    public String getPresentationName() {
  23.       return this.name;
  24.    }
  25.  
  26.    public void setDocument(BaseDocument var1) {
  27.       this.document = var1;
  28.       this.wasTouched = this.document.isTouched();
  29.    }
  30.  
  31.    public BaseDocument getDocument() {
  32.       return this.document;
  33.    }
  34.  
  35.    public void undo() {
  36.       super.undo();
  37.       Debug.assert(this.document != null);
  38.       this.undoCommand();
  39.       if (!this.wasTouched) {
  40.          this.document.setTouched(false);
  41.       }
  42.  
  43.    }
  44.  
  45.    public void redo() {
  46.       super.redo();
  47.       this.redoCommand();
  48.    }
  49.  
  50.    public abstract void doCommand();
  51.  
  52.    public void undoCommand() {
  53.       this.doCommand();
  54.    }
  55.  
  56.    public void redoCommand() {
  57.       this.doCommand();
  58.    }
  59. }
  60.